From 16ee61ce2adab89167db3b6a310025aedc941f0e Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Mon, 12 Jun 2006 10:09:44 +0100 Subject: [PATCH] [HVM][VMX] Fix the build with certain versions of gcc. Restrict register choices to this which are byte addressable. Signed-off-by: Keir Fraser --- xen/include/asm-x86/hvm/vmx/vmx.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/xen/include/asm-x86/hvm/vmx/vmx.h b/xen/include/asm-x86/hvm/vmx/vmx.h index 074c85bbaf..444751ec6e 100644 --- a/xen/include/asm-x86/hvm/vmx/vmx.h +++ b/xen/include/asm-x86/hvm/vmx/vmx.h @@ -242,7 +242,7 @@ static always_inline int ___vmread( MODRM_EAX_ECX /* CF==1 or ZF==1 --> rc = -1 */ "setna %b0 ; neg %0" - : "=r" (rc), "=c" (ecx) + : "=q" (rc), "=c" (ecx) : "a" (field) : "memory"); @@ -313,7 +313,7 @@ static inline int __vmwrite (unsigned long field, unsigned long value) MODRM_EAX_ECX /* CF==1 or ZF==1 --> rc = -1 */ "setna %b0 ; neg %0" - : "=r" (rc) + : "=q" (rc) : "a" (field) , "c" (value) : "memory"); @@ -366,7 +366,7 @@ static inline int __vmxon (u64 addr) MODRM_EAX_06 /* CF==1 or ZF==1 --> rc = -1 */ "setna %b0 ; neg %0" - : "=r" (rc) + : "=q" (rc) : "a" (&addr) : "memory"); -- 2.30.2